package com.zh.myutils;

/**
 * 处理数据是否符合要求的工具类
 */
public class DataCheckUtils {

    /**
     * 判断字符串能否被转换为double类型
     * @param s 字节数组
     * @return boolean类型
     */
    public static boolean checkStringIsDouble(char[] s){
        if(s.length == 0) return false;

        // 标记小数点
        boolean decimalPoint = true;
        // 标记是否为负数
        boolean isNegative = false;
        for (int i = 0; i < s.length; i++) {
            if(i==0&&(s[i]=='-'||s[i]=='+')){    // 判断是否为负数
                if(s[i]=='-') isNegative = true;
            }else if(decimalPoint&&s[i]=='.'){  // 判断小数点个数
                decimalPoint = false;
            }else if((s[i]>'9'||s[i]<'0')){ //判断内容是否合法
                return false;
            }
        }
        return true;
    }

    /**
     * 判断字符串能否被转换为int类型
     * @param s 字节数组
     * @return boolean类型
     */
    public static boolean checkStringIsInteger(char[] s){
        if(s.length == 0) return false;

        for (int i = 0; i < s.length; i++) {
            if((s[i]>'9'||s[i]<'0')){
                return false;
            }
        }
        return true;
    }

}
